iT邦幫忙

0

# Day 08|走出本地終端!建立 LINE Messaging API Channel 與 Webhook 串接準備

  • 分享至 

  • xImage
  •  

在昨天的文章中,我們達成了一個重要的技術里程碑:利用 Dify + Google Gemini 充當語意解析中樞,將使用者的日常口語轉化為標準結構化 JSON,並透過 n8n 自動派發給 FastAPI 進行餐廳篩選。

然而,目前所有的測試依然停留在 n8n 畫布或開發者工具中。如果想讓身邊的朋友、家人,或是真實使用者隨時隨地都能使用這個美食 Agent,最直覺、門檻最低的載體莫過於大家每天都在用的——LINE!

今天 Day 08,我們將正式跨出本地環境,前往 LINE Developers Console 建立 Messaging API Channel,並完成串接 n8n 所需的金鑰設定與基礎通訊準備!


一、LINE Messaging API 運作架構圖解

在開始動手前,我們先釐清 LINE 機器人與我們本地系統的資料流動路徑:

[使用者手機 LINE App]
         │ (發送文字訊息)
         ▼
[LINE Platform 伺服器]
         │ (觸發 Webhook POST 請求)
         ▼
[ngrok 公網隧道 (HTTPS)]
         │ (轉發流量至本地端連接埠 5678)
         ▼
[n8n Webhook 節點]  <-- 接收事件封包並啟動 AI 推薦工作流

要讓這條鏈路暢通,核心在於兩樣東西:

1.Channel Secret:用來驗證傳進來的 Webhook 封包是否真的來自 LINE 官方伺服器(數位簽章驗證)。

2.Channel Access Token:未來我們由系統回覆(Reply Message)給使用者時所需的身分憑證。

二、建立 LINE Developers 開發者帳號與 Provider

Step 1:登入 LINE Developers Console

1.打開瀏覽器前往 LINE Developers Console 官方網站。

2.點擊右上角 Log in,使用你個人的 LINE 帳號登入(若首次登入需填寫開發者名稱與 Email 進行驗證)。

Step 2:建立 Provider(提供者)

1.Provider 代表組織或專案名稱(例如你的團隊或個人代稱):

2.在 Console 主畫面中,點擊 Create a new provider。

3.在 Provider name 欄位輸入你的專案名稱,例如:FoodAgent-Studio。

點擊 Create 建立完成。

三、建立 Messaging API Channel(機器人頻道)

建立完 Provider 後,我們要為美食機器人建立專屬的 Messaging API 通道。

Step 1:新增 Channel

1.在剛剛建立的 Provider 頁面中,點擊 Create a Messaging API channel。

2.依序填寫頻道基本資訊:

Channel type:Messaging API(預設)

Provider:確認為剛建立的 Provider

Channel icon:可上傳一張可愛的美食相關大頭貼

Channel name:機器人顯示名稱,例如 美食探險小幫手

Channel description:簡短描述,例如 專屬個人化的智慧餐飲推薦助理

Category:選擇類別(例如 Restaurants 或 Utilities)

Subcategory:選擇次類別

Email address:填寫你的常用聯絡信箱

3.勾選同意相關服務條款,點擊底部的 Create,確認彈窗後點擊 OK。

四、取得關鍵安全憑證與關閉自動回覆

為了讓機器人完全由我們的 n8n 工作流掌控,必須關閉 LINE 官方內建的預設罐頭回覆,並取得兩組關鍵金鑰。

Step 1:取得 Channel Secret

1.進入剛建好的 Channel,切換到 Basic settings 分頁。

2.往下捲動找到 Channel secret 區塊。

3.複製並妥善保存這串 32 碼的金鑰字串。

Step 2:發行 Channel Access Token

1.切換到 Messaging API 分頁。

2.捲動至最底部找到 Channel access token (long-lived) 區塊。

3.點擊右側的 Issue 按鈕。

4.系統會立即生成一長串長期有效的 Access Token,點擊複製並保存。

Step 3:關閉 LINE 官方預設的自動回應與 Greeting

LINE 官方帳號預設會在每次收到訊息時自動吐出「感謝您的訊息,目前無法個別回覆…」的罐頭訊息,這會與我們的 AI 工作流衝突,必須將其關閉:

1.在 Messaging API 分頁中,找到 LINE Official Account features 區塊。

2.點擊 Auto-reply messages 旁邊的 Edit(會跳轉至 LINE Official Account Manager 後台)。

3.在回應設定頁面中:

回應模式:保持「聊天」或「Bot」。

自動回應訊息:切換為 停用 (Disabled)。

加入好友歡迎訊息:可依個人喜好選擇開啟或停用。

Webhook:切換為 啟用 (Enabled)。

4.設定完成後關閉該後台分頁即可。

五、在 n8n 中準備 Webhook 接收端點

現在我們回到 n8n,為明天的串接先鋪好接收端點!

1.打開瀏覽器進入本地 n8n(http://localhost:5678)。

2.點擊 Add workflow 建立一個名為 LINE Bot Core Workflow 的新流程。

3.點擊 Add first step,搜尋並新增 Webhook 節點。

4.設定如下:

HTTP Method:選擇 POST。

Path:填寫 line-webhook。

Response Mode:先選擇 On Received,Response Body 填寫 {"status": "ok"}。

5.點擊儲存(Save)。

今日結語與明日預告
今天我們順利完成了 LINE Developers 的所有前置準備:

建立專屬 Provider 與 Messaging API Channel。

取得了雙向通訊必備的 Channel Secret 與 Channel Access Token。

關閉了 LINE 官方干擾的罐頭自動回覆。

明天 Day 09,我們將把 ngrok 與 LINE Webhook 正式接軌:配置 LINE Webhook URL,並在 n8n 中驗證數位簽章(X-Line-Signature)與解析 LINE Event 封包! 敬請期待!


*提醒邦友,使用第三方服務/API 時,請務必評估資安風險與隱私保護
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言